{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Spectral derivative in **2D** in NumPy\n",
    "\n",
    "$$ \\nabla f (\\vec{x}) = \\text{ifft2} \\left( i \\vec{k} \\odot \\text{fft2} \\left( f(\\vec{x}) \\right) \\right) $$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Assuming the domain is [0, L]^2 with identical number of grid points in each\n",
    "# direction for now\n",
    "L = 1.0\n",
    "N = 100"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "# IMPORTANT: endpoint is not included as per FFT convention\n",
    "mesh_1d = np.linspace(0, L, N, endpoint=False)\n",
    "X, Y = np.meshgrid(mesh_1d, mesh_1d)\n",
    "mesh = np.stack((X, Y))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "f = lambda x: np.sin(2 * np.pi * x[0]) * np.sin(4 * np.pi * x[1])\n",
    "f_x0 = lambda x: 2 * np.pi * np.cos(2 * np.pi * x[0]) * np.sin(4 * np.pi * x[1])\n",
    "f_x1 = lambda x: np.sin(2 * np.pi * x[0]) * 4 * np.pi * np.cos(4 * np.pi * x[1])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "f_h = f(mesh)\n",
    "f_x0_h = f_x0(mesh)\n",
    "f_x1_h = f_x1(mesh)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [],
   "source": [
    "def plot_contour_row(*fields, levels=np.linspace(-1, 1, 11), cmap=\"RdBu_r\"):\n",
    "    fig, axes = plt.subplots(1, len(fields), figsize=(5*len(fields), 5))\n",
    "    for ax, field in zip(axes, fields):\n",
    "        a = ax.contourf(X, Y, field, levels=levels, cmap=cmap)\n",
    "        ax.set_aspect(\"equal\")\n",
    "        ax.set_xlabel(\"$x_0$\")\n",
    "        ax.set_ylabel(\"$x_1$\")\n",
    "\n",
    "    fig.subplots_adjust(right=0.8)\n",
    "    cbar_ax = fig.add_axes([0.85, 0.15, 0.05, 0.7])\n",
    "    fig.colorbar(a, cax=cbar_ax)\n",
    "\n",
    "    return fig, axes"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 1500x500 with 4 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_contour_row(f_h, f_x0_h, f_x1_h);"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [],
   "source": [
    "wavenumbers_1d = np.fft.fftfreq(N, d=1/N) * 2 * np.pi / L\n",
    "KX, KY = np.meshgrid(wavenumbers_1d, wavenumbers_1d)\n",
    "wavenumbers = np.stack((KX, KY))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [],
   "source": [
    "# More precisely: the \"gradient\" operator (as it accumulates all partial derivatives)\n",
    "derivative_operator = 1j * wavenumbers"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [],
   "source": [
    "f_x0_h_spectrally = np.fft.ifft2(\n",
    "    derivative_operator[0] * np.fft.fft2(f_h)\n",
    ").real"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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cX3605929f2Hed1wJJeTvXleLsTS3DBe23eZr04ge+yKIud3AO74cTRG47iRan+nx/TfJzY2qtPlqjHSJ4j8nnjVFHVuft3rJiHG9v5ul4YMr456MzzLnTwuSaqvry96vK2tTffee6/nr9vV1aWamuLflWHDhukjH/mIurq6TD/vX//1XzVnzhydddZZGjZsmEaMGKFnnnlGH/vYx1x9f/boZYzVqpmb1WC7KySyVw+Fr3vhz0O553MW/pyyKowscfrz7Wahzq6sk9/Z5Ed+213IjfxGHO3bt0+HDh0a+LNw4ULDj1uwYIGGDBli+Wf37t2et2Px4sV6//339ctf/lK//e1v1draquuuu06vvfaaq6/DoJchRiHqx0nRhUWh8E2AYS+7/Bry3FzxNY+ygDSyy28/DrsnvyEF83oXLj6wWIc4GzVqVNGfqqoqw4/7xje+oY6ODss/55xzjurq6rR///6izz116pTee+891dXVGX7tP/7xj3r00Ue1bt06XXnllZo6dara2to0bdo0rV692tXzYdDLCDclwc/751EWssdsyCtVuEDg5B56TouCRFlAugS1SGeEYS/bSl9ns4W6IA+7J7+RBGeffbYmTZpk+aeyslLNzc16//33iy6i8qtf/Ur9/f1qamoy/NrHjh2TJFVUFI9pQ4cOVX9/v6vtZNDLgHJKgtM9KmZ79aTBZYHCkF5WQ57fJcHJsEdhQNI5ye9yF+pKfx+thj3yO71K89vp0RhOFupKkd/IismTJ+szn/mMbr31Vu3YsUMvv/yy5s+fry996UsaP/6D36u33npLkyZN0o4dOyRJkyZN0sc+9jH9t//237Rjxw798Y9/1EMPPaTNmzfr2muvdfX9GfRSzCwo/SoJVuFuNexJFIa0KX09rYa8cpT+fNqVBYnVYSSTl/wuZbVQV5rfdsMeA196uc1vrwt1XvObDEfS/eQnP9GkSZN05ZVXatasWbr00kv12GOPDfz7yZMntWfPnoE9ecOHD9fGjRt19tlna/bs2br44ov14x//WE888YRmzZrl6nsPyeVyOV+fTQIcPnxYo0eP1qFDhzRq1KioN8d3VqFoVxJKg7i0KOwffnbR30uv3PZCR/FxyEZX4TS6mtu7G+8x2WLEmdVhPnl2JcFowaDm5IGiv/e//nLR3w/+5sWiv5dexW3brm7D7b3ryBuG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HgAAAACkDIMeAAAAAKQMgx5Qpn/5l3/Rhz70Ib3zzjsDj82bN08XX3yxDh06FOGWAQCskN8A0mxILpfLRb0RQJLlcjk1NDTo8ssv16pVq9TW1qZ169bplVde0YQJE6LePACACfIbQJqxRw8o05AhQ7R06VKtXbtWS5cu1apVq7Rp06aBkvDcc8/pggsu0Hnnnacf/vCHEW8tACCP/AaQZuzRA3zyiU98Qr///e/1wgsv6IorrpAknTp1SlOmTNGvf/1rjR49Wo2Njdq2bZvOOuusiLcWAJBHfgNII/boAT7YtGmTdu/erb6+PtXW1g48vmPHDv31X/+1JkyYoDPOOEPXXHONXnjhhQi3FABQiPwGkFYMekCZdu7cqeuuu06PP/64rrzySi1evHjg395+++2i8zwmTJigt956K4rNBACUIL8BpNmwqDcASLLOzk599rOf1d13363rr79e55xzjpqbm7Vz50594hOfiHrzAAAmyG8AaccePcCj9957T5/5zGf0+c9/XgsWLJAkNTU16ZprrtHdd98tSRo/fnzRCvBbb72l8ePHR7K9AIAPkN8AsoCLsQABOnXqlCZPnqytW7dyMj8AJAj5DSDpOHQTCNCwYcP00EMP6W/+5m/U39+vf/qnf6IkAEACkN8Ako49egAAAACQMpyjBwAAAAApw6AHAAAAACnDoAcAAAAAKcOgBwAAAAApw6AHAAAAACnDoAcAAAAAKcOgBwAAAAApw6AHAAAAACnDoAcAAAAAKcOgBwAAAAApw6AHAAAAACnz/wN4ob+iBEToFQAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 1000x500 with 3 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_contour_row(f_x0_h, f_x0_h_spectrally);"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "6.685780684926603e-15"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.linalg.norm(f_x0_h_spectrally - f_x0_h) / np.linalg.norm(f_x0_h)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [],
   "source": [
    "f_x1_h_spectrally = np.fft.ifft2(\n",
    "    derivative_operator[1] * np.fft.fft2(f_h)\n",
    ").real"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA3oAAAGKCAYAAABaXjNIAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABXS0lEQVR4nO3df3RU9b3v/xchJBEloIQkwI3N0RYhFUgNJSeAenqNYunhlnV+SNElylW8tU2v17SegoDRWsRzUItX6eFI5daeVQvVtp4uy6UiSq0S5TSYb7XyY6knF5aYQOBAAhQCyXz/gAkzO3vP7D2zZ++ZvZ+PtbKUyUzyGWZ4zfv92Z/92YMikUhEAAAAAIDAyPN7AAAAAAAAd9HoAQAAAEDA0OgBAAAAQMDQ6AEAAABAwNDoAQAAAEDA0OgBAAAAQMDQ6AEAAABAwOT7PQAAAAAAuenkyZPq6enxexhpKygoUFFRkd/DcBWNHgAAAADHTp48qdKhF6k70uv3UNJWXl6u//iP/whUs0ejBwAAAMCxnp4edUd6df8FlSoalLtnhJ2M9OmR9jb19PTQ6AEAAACAJBUNylPRoMF+DwMGudt6AwAAAABM0egBAAAAQMDQ6AEAAABAwNDoAQAAAEDA0OgBAAAAQMDQ6AEAAABAwNDoAQAAAEDA0OgBAAAAQMDQ6AEAAABAwNDoAQAAAEDA0OgBAAAAQMDQ6AEAAABAwNDoAQAAAEDA0OgBAAAAQMDQ6AEAAABAwNDoAQAAAEDA0OgBAAAAQMDQ6AEAAABAwNDoAQAAAEDA0OgBAAAAQMDQ6AEAAABAwOT7PQA/9PX1af/+/Ro2bJgGDRrk93AAwLFIJKLu7m6NGTNGeXnhmbMjvwEEQVgzHN4KZaO3f/9+VVRU+D0MAEjbvn379F/+y3/xexieIb8BBEnYMhzeCmWjN2zYMEnSv997s/7vv7wtSbrn03f9HBIC4snRX5Ak1U4s1aVfGq9RdzbqYH6JWjuO6bXdB/XiT/6v2n5xn8+jRBB85qvf15GtK/vzLCxi8/vwto/1znsHyG+4wpjfI2dM06Er/7o/v7e/96neWHq9z6NEEFT+7UqNrRqn9//3/NBlOLwVykYvutznosICFQ0aLEkqLi72c0gIiOj76cL8fA0rKlDxsGE6OaRYQ48PUsHQP2vQkCLea3DFoPzCs/8N2fLF2Pw+lZ+vokGD+TcFVwzI7wuHqqf4fH4PLryQ9xpcMWhIkQYXDj37/yHLcHiLRcFAhpRce43fQwAApCivarrfQwCAtNDoAQBy2sqLxvk9BAAAsk7oG71p1WV+DwEhUllT4/cQAAApGjlrud9DAADbQt/oAQAAAIATq1evVmVlpYqKilRbW6vt27cnvP+qVat0xRVX6IILLlBFRYXuvfdenTx5MqNjpNE7h6U/8AozwgAAALlrw4YNamxsVFNTk3bs2KHJkydr5syZOnDggOn9n3/+eS1atEhNTU3auXOnnn32WW3YsEH3339/RsdJowdkQOX1VX4PAQAAABnwxBNPaOHChVqwYIGqqqq0Zs0aDR06VOvWrTO9/7Zt2zR9+nTdfPPNqqys1A033KB58+YlPQqYLho9wGWc94lMGzlruS79QrXfwwACi12TgXDq6uqK+zp16tSA+/T09KilpUX19fX9t+Xl5am+vl7Nzc2mP3fatGlqaWnpb+w+/vhjbdy4UbNmzcrMEzknlNfRAzKB5b8AACCMaieW6sL83G0rjp85I73zsSoqKuJub2pq0oMPPhh3W2dnp3p7e1VWFj+xX1ZWpl27dpn+/JtvvlmdnZ2aMWOGIpGIzpw5o69//esZX7qZu68IAACAC6ITddOqy1h6j4waOWu5Kmtq1HvquN9DgYl9+/apuLi4/8+FhYWu/NytW7fqkUce0Q9/+EPV1tbqww8/1D333KOHH35Yy5Ytc+V3mKHRAwAAABB6xcXFcY2emZKSEg0ePFgdHR1xt3d0dKi8vNz0McuWLdOtt96qO++8U5I0ceJEHT9+XHfddZeWLFmivLzMnE3HOXoAgJzH0ml4hZ2TgXArKChQTU2NtmzZ0n9bX1+ftmzZorq6OtPHnDhxYkAzN3jwYElSJBLJ2Fhp9GJQKABA7qi8vorNj+CZuuoxqqyp8XsYCIipE0f7PQSkobGxUWvXrtVzzz2nnTt36u6779bx48e1YMECSdL8+fO1ePHi/vvPnj1b//zP/6z169frP/7jP7R582YtW7ZMs2fP7m/4MoGlmzq7Jn9ba0fyOwIuqKyp0chZy3Vo4xK/h4IcxNGEs0bOmKaeP/zB72EgJG6YUKpXdppfHwtA+MydO1cHDx7UAw88oPb2dlVXV2vTpk39G7Ts3bs37gje0qVLNWjQIC1dulSffPKJRo0apdmzZ2v58sx+poe+0au8vkptmz/wexjIcXaPBtdVj1Fz6/4MjwZBx4n8gHtYzQOvMFEXLA0NDWpoaDD93tatW+P+nJ+fr6amJjU1NXkwsvNCvXRz5Ixpfg8BAZNoGdkNE0o9HAmCjmU/gDdqRg/zewgIEJb/wkuhbvTMMLOHdNndmpuZPcBd5DfS4eR8T/Ib6airHuP3EBASNHpAmlIpLpnRQyooLs2xIQtSZcxvOxN15DdSQX7DDzR651AowE0l114T92eW/sAtFJnxjIU5R/WQSbFHYijcAWQ7Gj1RKCB1se8Vu5MFFApIRex7hWU/gLti89s4UQekK5rfTNTBazR6Fmj2kAq75+dJ5wOfZg92USRYiy3UyW/Y4fR9EruhFvmNVEUn6v7rFaN8HgnCIPSNXuzMHcs34USyo3l5VdMH3BYtFDgiAycoJs1x5AWpMmvy7E7URfObiRfYwdE8+Cn0jV6UWcAzKwwrid4bTopPZoWRjLFIYDZ4oGh+c1QPdhjfG3Yn6qyQ37Bild9cbgleodEzMAY+xQKMrIoEu7PBxqN6NHuwwkxweshvGCXLb6uJuuiGWuQ37OI9gWxAo6fzwW42KyxRLOC8dJq8RDtvUizAyKzJYzb4vLzxfynJXn6T4ZDsHclzwqzZI8MhxX+WczQPfgp1oxctFGJRLMCM2etvViTYXbZpdq4exQKk+NffrMmDNav8lpiwC7Nk+Z3saJ5RbKFudr4e+R1exvw2NnmA1wZFIpGI34PwWldXl4YPH67OD/+oi/b9sf/2zt+90f//bZs/kCRta+0w/Rn3HduT2UEiK1gVh8mKhNjzOw4MOX8uVcun3f3//8rOA3E/s7l1f///t7W09P//oY1LnA4bOchsBlgaWCBEi8wTx7o1r3acjh49quLiYm8GmQWc5LdEhoeZk/yWzme4nfyW4jPcKr8lMjwMrPJbis/w2EmCcRdGNKFyTM5neDSTf1v7l7owP9/v4aTs+JkzmvnO2zn/ehjR6MUUCpLzYiGKoiE4Es38WxUIkr1GT0pcLEiJCwaJoiFIjDP/dgsEKThFglOx+V08bJj6Pnir/3tW+S0lznDyOziyKb8lmr4gc5LfUnyG14wepu6urkBkOI1edgt9o2csFKT4YkFyVjBEUTjkBrvLuewWCNLA3dqMhYKUvFiQBhYMEo1fLjNbzmW2yYrZEh9jkxekIsEpL/JbIsNzQSr5LZkfxYtKJb8lexlult8SGZ4L3MxvKVgZTqOX3Wj0hp3dIMNYLEgDCwZpYNEg2S8cjCgkMiudc3LMzvFJ1uBJ5ltymxUKknmxIJkXDFFmzV+UVREhUUhkWqJzchLtmJnovA2rE/ajm/oEpUhwKlvyWyLDMynT+S0lb/Ik5/ktWWd4qvktkeGZlOycSqsMTye/peBkOI1edqPRGxa/E6JZwSCZFw1RZsWDlF4B4YZsL0L83hwh0Y5rVrtoJjpZ3+q6S1aFQqxERUNUogbQKFFBYZSswLAj24sQNzZHcHqJA7sn39vZgc1sx9agFAlOeZXfkr8ZTn4nlkp+S9YZnun8luxnuJP8ltLPcPJ7oEzntxScDKfRy240esOst7y3KhpiJSogYiUqJsz43STmCqfbY9u91p3d3dfsXlTXTrGQiN1Cwi4nTSMGcnt77ESX3rASlCLBKT/yWyLDMyFT+S3Zy3A7+Z1udkvkd7bJhvyWgpPhNHrZLXdfEQ8k+xDo++At2w2BnfvFFh1OPtBwlt3Xwi67TZwdpacPSkq9aEj1g8SrnwdkGzfzW0qeL8amkQx3xu38ltLPcDeaPIn8BuCfUDd6B/NLVKxTKT/ezUZAkkpd/nnIPtGGzy12jlp4wcmRET9koohMhZuZUXTG3aMEYUN+w0psg+d2ZsfKlvyWsjvDg5jfEhkOb4S60ZPcm7GL5fYyjVTkytIOt5dQpCKTs6NOigQnH/qpfCg7XXpmlNNL0Va+nvDbTpeQGdk+enPudXNSuLhdXATFwfwSnRySmeU1ZLg95Pd55HcGkd9AykLf6Nnh9onWsZyedG3kxkYafvpZgu85PXnayO7J1NHXzUnR4kZxkagwSHXzCCnHP9B9ku7fmdnjExUfbZs/sL1hhPF9QuHgjJOmzWmGk9/Wgp7fUmqb/0hkuNvIb8AajZ6JVLZNlpJ/6Gdm++QbU3hMMBl35jL7+061+DAWEbHvEadFg5PiwO3t4KOyfUe/bGdnx8FUX6fK66sGvBdMC4eKSSn9/KDzK7+lVDKc/I7KZH5L8RmeTn5L/l3OIxYZnrpsyG8aPngl1Ltu7mzbr2ExO+ukehHUKC6GmjvsXvxUcnYBVCPj0h+nF3eWuMBzrnOyDX2iCztL8QVD1/ETKv3ruwK3Q1gyVvktpZfh5HfusNpuP90LWBsly28peYY7aRjI8OyTqfyWpGMVk1Ty2Uk5n+HsupndaPTOvZjGAsFYHBgLA7OigIIg9xkLCGPhYCwajAWDsVhIVCgkKhCSFQcUBLktWfGQqGCIFgs0eqnntzQww8nv3Ed+wyuJMtxOfkvByXAavexGo2dSKMQWCYkaPAqDYEtUNMQWDImKhdhCwapIsFMgUBgEm1XREFswGIuFoBQJTjnJbyk+w8nv8LCb31J8hpPfcCqV/JZo9LINjV6AGAsFO00eBUK4xRYNZgWDk0LBrEigQECUWdEQLRhii4WCKVMCUSQ4RX7DqWT5LZ3P8FTyWzLPcPI7fBLlt3Q+w4M0WUejl93y/B5ANjErEtpaWvqLhEMbl1AkhFTsax9bNEbfJ7HvHbPzhMzO7UjU5N13bA9FQkiZvfbR90i6W6wHGfkNK8nyO5bdXVpj89uY4eR3eCXK71jZfN1CBEvoGz2zUI8tEqIoECDJtFiIsrM1ezTckzV5QLJm79Cb2zwfUy4gv2HF7mSdkXGiLtGEC/kNKXl+A17J3WOsLouGvLFIoECA0aGNSzRy1nK1tbSosqZGza37bV/zKREKBBjdd2xP3FKgba0daV8cOEiiE3XG/I5FhiOWMb+dMB6FMTuSB0RZ5Xf0OnxBm6y79EvjNayowO9hpKz7ZI/0ztt+D8N1oT+ilwgFAqwYZ4adXDjZ7GgeBQKsmL03mBVOjIk6JGKV39EJAzvLN2nyYAfvC/iNRi+G2ZIfwIpZEZlo+Q9r8pGq2GLBrQsuBw2rMeBEomX4iZhNslDMIxHyG36i0VN8cU6RAKfMCoVkM8IczUO69r6+y+8hZAWzyRXyG04lW5URO1FHfiNdrMqAV2j0gDTEFpR2lm8aw50iAXbxXkmO1RhwggkBeIWjevALjd45sUU64Q+nEhWYxh3bCHmki/eQNfIbTsXmd6Ll90zUAcg1oW70WjuOxf2Z2WCkwlhY2rnMApAKCktzTjZDAmI5nRhgkgWpIr/hh1A3emaYDYZXCH3APUzUIV1MGMBLnGcNL9DoAS6yKhTYcRPIPCbqkCqriQLj0vsoJuqQDo4MwytZ0eitXr1alZWVKioqUm1trbZv357w/qtWrdIVV1yhCy64QBUVFbr33nt18uTJlH43y+zglmRHFNhlC256573syC6/8tu49B5IFRME8AoTBPCa743ehg0b1NjYqKamJu3YsUOTJ0/WzJkzdeCAeRHz/PPPa9GiRWpqatLOnTv17LPPasOGDbr//vtTHgPLNZAuu4UCs3hIVzYVCtmQ30CmsSIDQK7yvdF74okntHDhQi1YsEBVVVVas2aNhg4dqnXr1pnef9u2bZo+fbpuvvlmVVZW6oYbbtC8efOSziIn09bSwqwePJNNxTqQKr/z+5WdB5iogyfaNn/ARB2AnONro9fT06OWlhbV19f335aXl6f6+no1NzebPmbatGlqaWnpLww+/vhjbdy4UbNmzbL8PadOnVJXV1fcFwAgddmU30zUwUtM1AHIFfl+/vLOzk719vaqrKws7vaysjLt2mW+G9HNN9+szs5OzZgxQ5FIRGfOnNHXv/71hEt/VqxYoYceesjVsQNAmJHfAABkN9+Xbjq1detWPfLII/rhD3+oHTt26Je//KV+85vf6OGHH7Z8zOLFi3X06NH+r3379nk4YgCARH4jex3auIRLdMAT0SPC2bKhFoLN1yN6JSUlGjx4sDo64te9d3R0qLy83PQxy5Yt06233qo777xTkjRx4kQdP35cd911l5YsWaK8vIG9a2FhoQoLC91/AgAQUuQ3gqi5db9umFDq9zAAwBW+HtErKChQTU2NtmzZ0n9bX1+ftmzZorq6OtPHnDhxYkAxMHjwYElSJBLJ3GCBJJgRhley4Rwh8htBxWWXAASFr0f0JKmxsVG33XabpkyZoqlTp2rVqlU6fvy4FixYIEmaP3++xo4dqxUrVkiSZs+erSeeeEJf+MIXVFtbqw8//FDLli3T7Nmz+wsGAEDmkd8AAGQv3xu9uXPn6uDBg3rggQfU3t6u6upqbdq0qf8E/71798bNAC9dulSDBg3S0qVL9cknn2jUqFGaPXu2li9f7tdTAOIkW/qTDUdjADeQ3wAAZC/fGz1JamhoUENDg+n3tm7dGvfn/Px8NTU1qampydUxsDU3ADiXDfkNAAAGyrldN4FcxcV2AQAA4BUaPYkNNAAgh7EiA15h6T2AXEKjB2QAu7YBQO5q+bTb7yEAQNpo9AAAAAAgYGj0AAAAACBgaPQAAAASYDMtALmIRg8AAAAAAoZGDwAAAAAChkYP8EDb5g/8HgIQSFweBwAAczR6AICcVVlT4/cQAADISjR6gAcqr6/yewgAAAAIERo9AAAAAHBg9erVqqysVFFRkWpra7V9+3Zbj1u/fr0GDRqkOXPmZHaAotEDAAAAANs2bNigxsZGNTU1aceOHZo8ebJmzpypAwcOJHxcW1ubvvOd7+jqq6/2ZJw0egAAAAlMqy7zewgAssgTTzyhhQsXasGCBaqqqtKaNWs0dOhQrVu3zvIxvb29uuWWW/TQQw/psssu82ScNHoAAAAAQq+rqyvu69SpUwPu09PTo5aWFtXX1/fflpeXp/r6ejU3N1v+7O9973sqLS3VHXfckZGxm8n37DcBAAAACJyRM6ap+MKhfg8jZQXHT0j6sSoqKuJub2pq0oMPPhh3W2dnp3p7e1VWFn+kv6ysTLt27TL9+W+++aaeffZZtba2ujjq5Gj0gAy4YUKp30MAQmPkrOU6tHGJ38NAgNSMHiadPun3MAB4bN++fSouLu7/c2FhYdo/s7u7W7feeqvWrl2rkpKStH+eEzR64jpMAAAguZUXjdN9x/b4PQwAGVJcXBzX6JkpKSnR4MGD1dHREXd7R0eHysvLB9z/o48+Ultbm2bPnt1/W19fnyQpPz9fu3fv1uWXX+7C6AfiHD3AI5zMDwAAkNsKCgpUU1OjLVu29N/W19enLVu2qK6ubsD9x48fr/fee0+tra39X//tv/03felLX1Jra+uA5aJu4ojeOSz9AQAAAJBMY2OjbrvtNk2ZMkVTp07VqlWrdPz4cS1YsECSNH/+fI0dO1YrVqxQUVGRrrzyyrjHjxgxQpIG3O42Gj3AZXXVYxJ+n6U/AAAAuWvu3Lk6ePCgHnjgAbW3t6u6ulqbNm3q36Bl7969ysvzf+EkjR4AAAAAONDQ0KCGhgbT723dujXhY3/84x+7PyAT/reaQECMnLWcjX3giZUXjfN7CEBgsWsygKCg0QMAAKFXWVOTdOk9kK7oRF3tRCYUkHk0egAAINRGzlru9xAAwHU0egAAAAAQMDR6AICcVVc9RpU1NRyRgWc4RxZArqDRO4dCAV6iUADSx6YZ8Erl9VWaVl3m9zAAwBEaPSW/7hmQjN1JAgoFpItJAsBbJdde4/cQACAloW/0mBGGW5JdWqHy+iqPRoIwCPuObdVlF/k9BAQEq3ngFSbq4LXQN3qAm6yODjMjDGQeBTtSZTVRl1c13fR2Cnakg9U98AqNngGFApwyvmfsHiWmUIBTvGesJTuiDiTDaRzw0qVfGu/3EBACoW70jEt/KBTgBWbyAHdRoCNVTid3yW+kiok6+CHUjV6s2EKBo3pwKtEkgdXSH4ngR2ooNq2R33AqNr8TrcgwnmdNfgPIdjR6BhzVgxOxRaWdowpsyIJUUVSaiy3MyW844TS/gVTF5jcTdfASjZ7MZ/CYFUYy0feIWXFZM3pYwsfGBj0FPJIxe49wfkc8VmUgFXYnB2I31CK/kS4mfeEVGr0Y0UIhGvwUC3Aq0bKfRDtvUizALmaDEyO/YUei90eiiTqzAp38RiIczYOfaPQsUCwgEePRPCfLfqKFgjHwKRZgxqxIYDY4XnSChck62GGV306uq0t+w45E74uRM6Z5OBKEFY3eOcZCIRbFAqJGzlruSpEQRbEAKysvGsf7IYmER15o9mAinUm66KoMJutgh/H9wEQd/BD6Rs+sUIidFaZYQFTse8BpkRDdedNYKJihWIDZe8BYJDAbbC723yT5jSizSbpYiSbqEu2cTLMHI7NJOpo8+CX0jV6s2KC3KhYoGMLHWCCYNXmx751kG7FExc4KmxULFAzhY/W6UyQkR37DTKL8NluNkSy/zSbryG9IzvI70Tn7gJvy/R5ANqgZPUwtn3ZLOhv4r+w8IOl8sdDcur//w6GtpSWuWDi0cYnHo4UXjAWhcQbYqsmzo+Taa9T5uzfO/tzrq9S2+QNJZz8MtrV2xN039kPjvmN7HP0e5IZEBWFsAWksErqOn8jouHKFk/yWRH6HhNkKjKh08jsW+Q3JOsMT5TfglUGRSCTi9yC81tXVpeHDh2tn234NKy6WpP5CIVa0YIhqbt0f9+e2lpYBj6FwyF3Jmjtp4FJNY5FgnA0uPX0w7s99H7zV///RZi8qWjBEGYsGIwqH3JVstt+qQJDOFwldx0+o9K/v0tGjR1V8LsfCwCy/pYEZTn6Hi9f5LcVnOPkdHm7ktxScDI9m8oGXn1HxhUP9Hk7KgvJ6GNHoGV5MOw1flLFwkMyLB4kCIltYLd2yupaS2Tl4VjPAZkt+khUKUvKGT0peNMSigMgOTpduGZd/JSoQpOB+KCXjR35LZHg28Du/pcTNnpR+fktkeDZwO7+lgRl+rGKSSj47KecznEYvu9HoWbyYZgVDlFXhEGVWQBglKihiUVxYs3u+TbIL4ibbUCXZ0p5E53SYFQqSvYYvyqxwkJwXD8lQXFhz+3wbs2spWZ1/Z7bMJ69qurq6uwNRJDhFfgdD0PJbMs9w8tt/XuS3ZK+5iwpShtPoZTcaPZsvZqLCwUqygiIRO8VGOuwWKulK9iHtBifbYxs5PT/D7kYrUVaFQpRVwSBZN36xrIqIKLeLCSRm52K4yTZUSXT+Ruzuf0EpEpwiv8/yIsPJ79TzW0qe4cnyWyLDveRlfkvByXAavexGo+fji5lK8QH7nH6oZ0KyQsEoWeFgxk5DmIidYiNdmS5W7HxAuyGdXS9TOQE/0bbuQSkSnCK/w8Hv/Haa3VFeZzj5bV825bcUnAyn0ctuod91M9Uwd8OXS3z71eFw+qTfI5AkHRgyyvb7LNkHg5lSG49JVHx4sQPYlIz/Bn+l8rohPaPOdKr49Cnffj/5nWFZkt9OeZ3h5Hf6yG8EWagbvVFnOiU5mzVMZbYuVrpHX8x4MaPntUxcLyydD8R0PwgODBmV1uPTNnmOv78fruvOL/R7CDmH/PZGtuW3RIYj+5Dh8EKoG71E0l17L9n/AGcN/kDp/J1YLQMxvh52ipFocZHo/ZCp2cB0l4alc46RGS/OO/JDOucIWUnn2lx+L1kLAi/zWyLDjbItvyXr90Sy/E61wSO/vUF+A4mF+hy9zg//qOJh5/9ROtlJS/JuNy0zYdlhy+3dssw42UFLSryLlplkhYKdgsDOh77dD3KnmziEZedAu7sAxrK7WYWdYsTp7oDdXV2aUDkmcOcTJJPp/JYyn+FhyW8p8xnud35LyTOc/M68XMtvKTgZbpXJuSYo50waZUWjt3r1aq1cuVLt7e2aPHmynnrqKU2dOtXy/keOHNGSJUv0y1/+UocPH9ZnPvMZrVq1SrNmzbL1+8zelMmujSO5c30cKVwf8tkilWIjlevimBULVoWCVXHg5LpfEtf+yjZOr/UlpXa9r2wpEshvZJob+S0lvzalNDDDye9wcSu/JfMMj234siXD00Wjl918b/Q2bNig+fPna82aNaqtrdWqVav0wgsvaPfu3SotHfiPpKenR9OnT1dpaanuv/9+jR07Vv/v//0/jRgxQpMnT7b1O41vSicXQLVTGFAI5BY7RYSTi1nbKRSMRYJZcWAsDMwKAgqB3GJWRJgVEMbCwaxgGHdhxPcigfyG39zObyk+w8lvRLmZ3zWjh9HoZRkavQypra3VF7/4RT399NOSpL6+PlVUVOhb3/qWFi1aNOD+a9as0cqVK7Vr1y4NGTIkpd8Z+6a8aN8f+29PtUCgMAieRMVDbNEQWzBYNXvGQiFRkZCsOKAwCJ7Y4sFYNCQqGLKh0fM7v42NXmyGk9/hRX7DK8bmLzbDkzV82ZDhbqDRy26+Nno9PT0aOnSoXnzxRc2ZM6f/9ttuu01HjhzRv/3bvw14zKxZs3TJJZdo6NCh+rd/+zeNGjVKN998s7773e9q8ODBpr/n1KlTOnXq/DbcXV1dqqiosGz07BQIFAfhYVY0JCsWrAqF2CLBqkCgOAgvq6YvtmCIFgsnjnVrXu043z6UsjW/pfMZTn4jlfyWzme4nfyWrDOc/A4PJ/kt+Z/hbqHRy255fv7yzs5O9fb2qqwsfllFWVmZ2tvbTR/z8ccf68UXX1Rvb682btyoZcuW6fHHH9f3v/99y9+zYsUKDR8+vP+roqJi4FhsNnn3HdtDkRAyZq/5ttaO/veH2bk/yXb9s9PkHdq4hCIhZGJf89j3Qux7xO3d+FKVjfktJW7yyO/wSSW/nWhu3d//77OtpaX/3y35HT7G/I6+F7IxvxEevjZ6qejr61NpaameeeYZ1dTUaO7cuVqyZInWrFlj+ZjFixfr6NGj/V/79u07+7N2vW35GGORQIGARK9/tFhItG272cn7Zk0eBQKSFQu5ys38NmPV5JHfMHv9jc2e3eskRot18htmYl9/mj34zddGr6SkRIMHD1ZHR/yHckdHh8rLy00fM3r0aI0bNy5umc+ECRPU3t6unp4e08cUFhaquLg47iuW8WieWZEASAPfC6ns2pesSACkxMVCNhQKfud3dKKO/IZd6TT8iS6hQH7DKFmzB3jF10avoKBANTU12rJlS/9tfX192rJli+rq6kwfM336dH344Yfq6+vrv23Pnj0aPXq0CgoK0h4TRQKSsWr2nM4KR1EkwEo2vyeyMb+NyG+YiX1fWOW31fJ740Qd+Q0rZkvxafbgNd+XbjY2Nmrt2rV67rnntHPnTt199906fvy4FixYIEmaP3++Fi9e3H//u+++W4cPH9Y999yjPXv26De/+Y0eeeQRffOb30xrHGbr9CkSYCXd9wZFAuyyKhRe233QtzFFZVt+x07Ukd+wK5WVGRL5jdRlw6oMhIPvjd7cuXP12GOP6YEHHlB1dbVaW1u1adOm/hP89+7dq08//bT//hUVFfrtb3+rf//3f9ekSZP0P//n/9Q999xjupW3HbFHXygS4ITZrHAssxlhs3CnSEAyZhu0ZINsym/ACbPPeLsbs3BUBk5ka34jHPL9HoAkNTQ0qKGhwfR7W7duHXBbXV2d3n7beiMVwC9tmz8YcDFey/sS+khRc+t+1YzLju2fsyW/maiDU/cd29N/+YVtrR0DLqxuFDtRx9E8OHFo45L+yy80t+5XXfWYrFiVgeDz/YheNjDO4lEkwK5kR/XMxM4GUyTALt4r5shvuM3ukWL+TcIpJnjhNRq9c1Jdow+YMRYKiXZsA5ygUADc43RigGWbSBUTA/ADjR6QplSOIFCsIxUUCuaYqINb7JynR34DyBU0egYs+0G67J7QT9EOuIv8RjqcTBiQ30gHR4bhlVA3eofe3Ob3EBAwiQoFtlOGm7a/92nyOwFIKtkEAUvv4SaOCMNLoW70pLNHX1j2g3TZPZLALB7SdWjjEgoFAMhBHAmG17Li8grZgmU/8EJbSwthD6Tp0JvbdOj3H/o9DITEKzsPMFEHIOeE/ogeACB3sSIDXmKiDm5h+T28QKMHAMh5rMgAACAejR4AAAi16EQBR4gBBAmNHgAAwDl2L5EDpIINteAlGj3AJcwIwyucIwRkVufv3vB7CACQNho9AMhBe99t9XsIAAAgi9HoARnA0h8AAAD4iUbvHHZsg1dYdgcAAIBMo9EDPMQJ2AAAAPBC6Bs9Ns4AAAB2sCIDQC4JfaMHAMhtLL0HAGAgGj0gQ9ieGwByV98Hb/k9BABIC40eAAAAADiwevVqVVZWqqioSLW1tdq+fXvC+7/wwgsaP368ioqKNHHiRG3cuDHjY3S10XvnnXfc/HEAAA+R4QAAJLdhwwY1NjaqqalJO3bs0OTJkzVz5kwdOHDA9P7btm3TvHnzdMcdd+jdd9/VnDlzNGfOHL3//vsZHaerjd7f//3fu/njAAAeIsMBa+yaDCDqiSee0MKFC7VgwQJVVVVpzZo1Gjp0qNatW2d6/yeffFI33nij7rvvPk2YMEEPP/ywrrrqKj399NMZHWe+0wfcdNNNprdHIhEdPnw47QEBQdXcut/vIQBkOAAAFrq6uuL+XFhYqMLCwrjbenp61NLSosWLF/fflpeXp/r6ejU3N5v+3ObmZjU2NsbdNnPmTL300kvuDNyC40bv1Vdf1b/+67/qoosuirs9EonojTfYfAIAshkZDgBw28H8Ep0cUuz3MFLWnX+2mauoqIi7vampSQ8++GDcbZ2dnert7VVZWVnc7WVlZdq1a5fpz29vbze9f3t7e5ojT8xxo/dXf/VXGjZsmK655poB35s0aZIrgwIAZAYZDgCAuX379qm4+HzDajyal2tsN3rd3d0aNmyYfvnLX1reZ/Pmza4MCgDgLjIcAIDEiouL4xo9MyUlJRo8eLA6Ojribu/o6FB5ebnpY8rLyx3d3y22N2O5+uqrM354EQiyuuoxfg8BIUaGAwCQvoKCAtXU1GjLli39t/X19WnLli2qq6szfUxdXV3c/aWzk6tW93eL7UbvC1/4gmprawesPW1tbdWsWbNcHxgAwD1kOAAA7mhsbNTatWv13HPPaefOnbr77rt1/PhxLViwQJI0f/78uM1a7rnnHm3atEmPP/64du3apQcffFB/+MMf1NDQkNFx2m70/s//+T+6/fbbNWPGDL355pvas2ePbrrpJtXU1Gjw4MGZHCMAIE1kOJCeypoav4cAIEvMnTtXjz32mB544AFVV1ertbVVmzZt6t9wZe/evfr000/77z9t2jQ9//zzeuaZZzR58mS9+OKLeumll3TllVdmdJyONmN56KGHVFhYqOuvv169vb267rrr1NzcrKlTp2ZqfAAAl5DhAAC4o6GhwfKI3NatWwfc9vd///eeX6/W9hG9jo4O3XPPPfr+97+vqqoqDRkyRLfffjsFAgDkADIcAIBwsd3o/cVf/IXeeOMNvfDCC2ppadEvfvEL3XXXXVq5cmUmxwfkrJJrB25fD/iFDAecyaua7vcQACAtthu9devW6d1339VXvvIVSdKNN96o119/XT/4wQ/0zW9+M2MDzLRp1WXJ7wQAOS6oGS5JKy8a5/cQAADIOrYbva997WsDbrvqqqu0bds2vfbaa64OCggqTuaHX8hwIH0jZy33ewgAYJvtRs9KZWWltm3b5sZYAAAeI8MBAAimtBs9Sbr44ovd+DG+YukPvMKMMLJNEDIcAADEc6XRAxCv8voqv4cAAACAEKPRA1zGBj/ItJGzluvSL1T7PQwgsNg1GUAQ0OgBLmH5LwAASIaN2eAVGj0AABBq0Ym6adVlLL1HRnGePrxEowcAAAAAAUOjBwDIeSydhlc4IgM3TJ042u8hIARo9GJQKMArFApA+iqvr2LzI3imrnoM51YByCk0emKXRHiLQgHpYJLgrJEzpvk9BITIDRNK/R4CADgW+kaPk67hBrtHg+uqx2R4JAgDJgsA97CaB15hog5eC3Wjx4ww3Jbo6DAzwnAT53cA3qgZPczvISBAmKiDl0Ld6JlhZg/psnuUmJk9wF3kN9Lh5DQO8hvpYHUPvEKjB6TJrLgsufaahI9hRg+poLg0x3nWSJUxv+1M1JHfSAX5DT/Q6J1DoYBMYukP3EKRGc9YmHNUD5kUeySGwh1Okd/wGo2eKBSQutj3it3JAgoFpCL2vcKyH8BdsfmdbEUG4BSf9fALjZ4Fmj2kwskurtGZPT4AYBezwfFiC/LYQp38hh1O3yexG2qR30hVdKLuv14xyueRIAyyotFbvXq1KisrVVRUpNraWm3fvt3W49avX69BgwZpzpw5Kf9uq0IBSCbZ0by8qukDbosWChyRgRPZXEz6md9AqsyaPLsTddH8ZuIFdkTzm/cL/OB7o7dhwwY1NjaqqalJO3bs0OTJkzVz5kwdOHAg4ePa2tr0ne98R1dffbUr44gGPLPCsCPRe8PJsh9mhZGMsUjIptlg8hu5yPjesDtRZ4X8hhWr/OZyS/CK743eE088oYULF2rBggWqqqrSmjVrNHToUK1bt87yMb29vbrlllv00EMP6bLLLsvo+CgWYGRVJNidDTYe1aPZg5Vsnwkmv5FrkuW31URddEMt8ht28Z5ANvC10evp6VFLS4vq6+v7b8vLy1N9fb2am5stH/e9731PpaWluuOOO2z9nlOnTqmrqyvuK1Y02M1mhSWKBZyXTpOXaOdNigUYmTV52TQb7Hd+543/S0n28psMh2TvSJ4TZs0eGQ4p/rOco3nwk6+NXmdnp3p7e1VWFh+2ZWVlam9vN33Mm2++qWeffVZr1661/XtWrFih4cOH939VVFRIOl8oxKJYgBmz19+sSLC7bNPsXD2KBUjxr79Zk5ct/M5vM1b5LTFhF2bJ8jvZ0Tyj2ELd7Hw98ju8jPltbPIAr+X7PQAnuru7deutt2rt2rUqKSmx/bjFixersbGx/89dXV0DioWSa69R5+/ekHQ29Ns2f9D/QbCttaP/ftEPi/uO7Un5eSB3WBWHyYoEO+d33DChVK/sPND/AdDcur//Q6GtpaX/w+LQxiWpDR45xWwGWBpYIOTqbHA25bdEhoeBk/yO5SS/pbP/Rq3yWyLDw8Aqv6X4DI/N7+qyizI/MISer41eSUmJBg8erI6OjrjbOzo6VF5ePuD+H330kdra2jR79uz+2/r6+iRJ+fn52r17ty6//PIBjyssLFRhYWHy8ZgUC9LZD4XYYkEa+AFC0RAciWb+kxUIydSMHqaWT7v7/2wsFqT4hk8aODtM0RAcxtfWSYPnd5GQDfmdVzVdfR+8dXY8CfJbUsIMJ7+DI9X8tnM0L5X8pukLrkT5LSXO8JrRw9RtOI0IyIRBkUgk4ucAamtrNXXqVD311FOSzn7wX3rppWpoaNCiRYvi7nvy5El9+OGHcbctXbpU3d3devLJJzVu3DgVFBQk/Z1dXV0aPny4Oj/8o4qHDesvFKKixUJUtGCIMhYMVigesp+d5VzGZWDJCgTjbPCBIQN3R4wtFqKiBUOs5tb9A25ra2kZcBvFQ/YzW85ltsmK2RIfY5MXLRImVI7R0aNHVVxc7N5AHSC/4Se7y3GdNHjkN8y4nd+SsiLD3RDN5J+9s0dDL7LeiyDbnTjWrXm143L+9TDyvdHbsGGDbrvtNv3Lv/yLpk6dqlWrVunnP/+5du3apbKyMs2fP19jx47VihUrTB9/++2368iRI3rppZds/05joSBpQLEgDSwYpIFFg2S/cDBDMZEZ6ZyPY3Z+j9nRO7MZYLMlP2aFgmReLESZFQ2SeeEQZVZAxKKYyIxk5+Mk2jEz0XkbVks0s6lIIL/J70zxI8PJ73BKlOGZym8pOzLcDTR62c33c/Tmzp2rgwcP6oEHHlB7e7uqq6u1adOm/hP89+7dq7y8zO8ZEw342IIh9kMgdkmQE8mKCC82CMi2YiQbNkVIttua1eucaHmPk+suSfGBbywaUjkPK/ZDx6ygqFm2KeHjkxUadmRbMeLWpgiJPuztzuqasfs6J9qx1U/kN/ntl0QZTn6nJoz5bfZ9Jxun2HmtszW/EQ6+H9Hzg9mMsBmzWWIjs1ljK2azycmkM9scdE63xnZS5Nndfc1ucWA1K+xEohnkVFnNPMOa25uhpFoEBGU22Ck381uyn+Hkt7tyJb/dyG6J/M4WmdjMKuwZzhG97Ob7Eb1sZudDwP7ecfY/fGILj1Q2/Agbu3+vTjmd4U2k9PRBSekVDZmYFWSmEUFl599v3wdv2c4P8jtzMpHhbuS3W02eRH4D8EeoG72D+SUq1qm0foabzUBUaQZ+JrJDtOFzg90jFpng5Eh2tsrUBEEybmVG0Rn3jxCEDfkNM7ENnpuZHYv8Tk+u57dEhsMboW70JHdn7KTMLM+wIyhLOPy6RlimZkadFAlOPvidflCnsuwsKrDLz1a+HvdHp0vJjGwfvTn32rm9PDhsDuaX6OQQd5fXkN/p8yPDyW9rYclvKb0Mz1R+S2Q4/BX6Ri8ZJx/8Tj+sE+3AlYwbJ15no58Z/pzsJOpEnJxQ/crOA44KFDcKi0SFQaJCINmHfmA/2DMs3b834+PTKTpiiwjj+4SiwRm7GU5+u8OPDCe/IaX3d2f22FQz3NgExr5XyG94jUbPRCrbJkvpbZ0sOd3x6kYH9w2P2F26zP7OExUdza37bW+XHPsecVo0WBUIXmwHH5VtO/nlGjs7D6b6OlVeXzXgvWDa+FVMSunnBx35nbuMuywa/94zkd+SOxlOfueWTGW43fym4YNXQr3r5s62/RoWs7NOOhdBlbgQai6x2rY51QugSubFgnHpj9OLO0tc4DnXOdmO3jiDnOjizl3HT6j0r+8K3A5hyZDfyJb8lpJnOPmd2zKV35J0rGKSSj47KecznF03sxuN3rkX01gkGAsEY3FAURBMxgIi2fV1jAWDsVhIVCjEFghOiwOKgtyXqIBIVDBEiwUaPfIb8fzKbyk+w8nv4EvWAMZmuFl+S8HJcBq97EajV1ycsEhIVCBQGARboqIhtmBIVCzEFgp2mjyrAoHCINisioZExUJQigSnkjV65Dck+/ktxWc4+Q2n7E7aRTM8aJN1NHrZjUbP0OhZFQkUCOEWWzSYFQxOCgWzIoECAVFmRUO0WIht9gqmTAlEkeAU+Q2nkuW3dD7DyW+kI1F+S/HNHo1edglqo5fn9wCyiVmR0NbS0l8kHNq4hCIhpGJf+9iiMfo+iX3vmJ0rZHZuR6Ii4b5jeygSQsrstY++R9LZZj3oyG9YSZbfsezu0kp+w0yi/I4VhGsZIjeEvtEzC/XYIiGKAgGSTIuFKDvbs0fD3apIoEBAVLJm79Cb2zwfUy4gv2HF7mSdkfFoXqIJF/IbUvL8BrwS+kYvKhryxiKBWWAYGYuFdK6nFYsCAUYUC4lFJ+qs8luiyUO8RJN1TplN1AFRTNYhG9DomYht8gAzVs2enaN6ZkfzKBBghfdG6shwmEmW33aWbxrzm3+nMMP7An6j0Yvh1pEZhIPTIpI1+UhVbLHgxgWXg8hsNQZgJdUjexxNh1PkN/xEo6f4ozAUCXDKrFBINiPM0Tyka+/ru/weQlYwO4pOfsOpZBO9sRN15DfSxYQBvEKjB6QhtqC0c0TYGO4UCbCL90pybpx3hfBgQgBe4age/EKjd05skU74w6lEBabx0gqEPNLFe8ga+Q2nYvM70XnWTNQByDWhbvRaO47F/ZnZYKTCWFja2ZAFSAWFpTnOr0aqnE4MMMmCVBnzm+X38EKoGz0zzAbDKxTtgHuYqEO6nEwYkN8AcgGNHuAiq0KBHTeBzGOiDqmymigwLr0H3MCRYXgl9I0ey+zglmRHFNhlC256571wZ5dx6T2QKiYI4BWOBMNroW/0JM7vQPrsFgrM4iFdFAqAtzp/9wYTdQByEo3eOW0tLczqwTMU60D6Xtl5gIk6eIaJOgC5hkYPAJDTmKiDl5ioA5AraPQAAAAAIGBo9AAAQKgd2riES3TAE9EjwmHfUAveoNEDXMLSMQDIbZzzCSBIaPQAFzEjDC9wjhCQOVx2CYCbDh8+rFtuuUXFxcUaMWKE7rjjDh07Zu8SQZFIRF/+8pc1aNAgvfTSS45/N40eAAAAAGTALbfcoj/96U/avHmzXn75Zb3xxhu66667bD121apVGjRoUMq/m0YPcFmypT8cjQEAAAi+nTt3atOmTfrRj36k2tpazZgxQ0899ZTWr1+v/fsT14utra16/PHHtW7dupR/P43eOZxfBQAAAIRXV1dX3NepU6fS+nnNzc0aMWKEpkyZ0n9bfX298vLy9M4771g+7sSJE7r55pu1evVqlZeXp/z781N+JABHuNguAOQ2VmQA5l7bfVAFQ//s9zBS1nPi7DlzFRUVcbc3NTXpwQcfTPnntre3q7S0NO62/Px8XXLJJWpvb7d83L333qtp06bpq1/9asq/W6LRkxTdQONGv4cBAEgBKzIAAG7Yt2+fiouL+/9cWFhoer9FixbpH//xHxP+rJ07d6Y0hl//+td67bXX9O6776b0+Fg0ekAGvLLzgGpGD/N7GACAFLR82q0vl/g9CgBeKy4ujmv0rHz729/W7bffnvA+l112mcrLy3XgQPxOvmfOnNHhw4ctl2S+9tpr+uijjzRixIi42//2b/9WV199tbZu3Zp0fFE0egAAAABg06hRozRq1Kik96urq9ORI0fU0tKimpoaSWcbub6+PtXW1po+ZtGiRbrzzjvjbps4caJ+8IMfaPbs2Y7GSaMHAAAAAC6bMGGCbrzxRi1cuFBr1qzR6dOn1dDQoK997WsaM2aMJOmTTz7Rddddp5/85CeaOnWqysvLTY/2XXrppfqLv/gLR7+fXTcBAAASYDMtAKn66U9/qvHjx+u6667TrFmzNGPGDD3zzDP93z99+rR2796tEydOuP67OaIHAAAAABlwySWX6Pnnn7f8fmVlpSKRSMKfkez7VjiiBwAAAAABQ6MHeKBt8wd+DwEIpLOXxwEAAEY0egCAnFV5bhczAAAQj0YP8EDl9VV+DwEAAAAhQqMHAAAAAAFDowcAAAAAAUOjBwAAkMC06jK/hwAAjtHoAQAAAEDA0OgBAAAAQMDQ6AEZcMOEUr+HAITGyFnL/R4CAqZm9DC/hwAAaaPRE9dhAgAAya28aJzfQwAA22j0AI9wMj8AAAC8QqN3Dkt/AAAAAARFVjR6q1evVmVlpYqKilRbW6vt27db3nft2rW6+uqrdfHFF+viiy9WfX19wvsDXqurHpPw+yz9QZCQ3wAAZCffG70NGzaosbFRTU1N2rFjhyZPnqyZM2fqwIEDpvffunWr5s2bp9dff13Nzc2qqKjQDTfcoE8++cTjkQNAuJHfAABkL98bvSeeeEILFy7UggULVFVVpTVr1mjo0KFat26d6f1/+tOf6hvf+Iaqq6s1fvx4/ehHP1JfX5+2bNni8ciBeCNnLWdjH3giW44Kk98IInZNBhAUvjZ6PT09amlpUX19ff9teXl5qq+vV3Nzs62fceLECZ0+fVqXXHKJ5X1OnTqlrq6uuC8AQOrIbwRNZU1N0qX3QLqiE3W1E5lQQOb52uh1dnaqt7dXZWXxuxGWlZWpvb3d1s/47ne/qzFjxsQVG0YrVqzQ8OHD+78qKirSGjcAhB35jSBhQzYAQeT70s10PProo1q/fr1+9atfqaioyPJ+ixcv1tGjR/u/9u3b5+EoAQBG5DcAAJmV7+cvLykp0eDBg9XR0RF3e0dHh8rLyxM+9rHHHtOjjz6qV199VZMmTUp438LCQhUWFqY9XgDAWdmS39GldiNnLdehjUtsjh5I3cqLxum+Y3v8HgYAJOXrEb2CggLV1NTEnYgfPTG/rq7O8nH/9E//pIcfflibNm3SlClTXBlLZU0NSzfgmWzZTANIVTbkN5tmwCuV11dpWnVZ8jsCQBbxfelmY2Oj1q5dq+eee047d+7U3XffrePHj2vBggWSpPnz52vx4sX99//Hf/xHLVu2TOvWrVNlZaXa29vV3t6uY8eOpTwGTr5GuuxOElAoIF3ZNEmQDfkNZFrJtdf4PQQASImvSzclae7cuTp48KAeeOABtbe3q7q6Wps2beo/wX/v3r3Kyzvfj/7zP/+zenp69Hd/93dxP6epqUkPPvig499/w4RSvbLT/JpPgBPJLq1QeX2V2jZ/4NFoEHS1E0uldz72dQx+5nd12UXaczztpwCwmgeeyaaJOoSD742eJDU0NKihocH0e1u3bo37c1tbW+YHBKTI6uhwybXXqPN3b3g8GiDzsim/OU8PqbKaqMurmq6+D94acDvn6SEd06rLdPzMGb+HgRDwfelmNuE8PaTC+J6xe94QM3twiveMtWRH1IFkOI0DXrr0S+P9HgJCINSNXnXZRX4PASGQVzU97s+cpwe4iwIdqXI6uUt+I1VM1MEPoW70YsUWChzVg1OpHk0g+JEKik1r5Decis3vRCsyKq+vivsz+Q0g29HoGbD8B07EFpV2jioYCwXALopKc7GFOfkNJ5zmN5Cq2Pxmog5eyorNWPxmtvMmJ/UjmWiRYFZc1owelvCx06rLtK317IWmOakfyZg1eZd+abz0zts+jCY71VWPUXPrfknkN+yzOzkQu6EW+Y10VV5fpe6TPX4Pw1Xb3/tUgwsv9HsYKes9FcxtnDmiFyM6oxcNfpYAwalEy34SXYuJozWwi9ngxMhv2JHo/ZFoos5sVQb5jUQ4mgc/0ehZoFhAIsajeU6W/UQLBWPgUyzAjFmRwBLgeNEJFibrYIdVftvdMVkiv2FPovfFyBnTPBwJwopG7xxjoRCLYgFRI2ctd6VIiKJYgJWVF43j/ZBEwiMvNHswkc4kXXRVBpN1sMP4fmCiDn4IfaNnVijEzgpTLCAq9j3gtEiIXmLBWChIFAsYyOw9YCwSmA2OZzZZR34jymySLlaiiTrjJXJikd8wMpukM+Z3olM5ADeFvtGLFRv0VsUCBUP4GAsEsyYv9r2TbCOWqGTNHgVD+FgVCMwEO0N+IypRfputxkiW33Yn68jv8LF63clv+IldN3U22Fs+7ZYUvwNn9EOguXV//4dDW0tLXLHAzm7BZCwIY2eAjUfxnC7ZjN29rfL6KrVt/kBS/E5uUbEfGuzsFkyJCsLYAjK2SCi59hp1HT+R0XHlCif5LYn8DoFE+S1ZT9I5ZcxvSXEZTn4HX6r5DXhlUCQSifg9CK91dXVp+PDh2tm2X8OKiyWpv1CIZbzkQnTr7qi2lpYBj6FwyE1mM/2JioMoY5FgnA0uPX0w7s99H7zV///RZi8qWjBEGZs+IwqH3GRnpt+qQJDOFwldx0+o9K/v0tGjR1V8LsfCwCy/pYEZniy/pYEZTn7nrmTNnZR8ks5JfkvxGU5+h4Nb+S0FJ8OjmTz5vhdz/vIK/9/Kv8v518OIRs/wYtpp+KLMCgfJvAGUKCKygdXSLatrKdlp7qLMlvwYCwUpcbEgDSwYpORFgxFFhP+cLt0yLv9KVCBIwSkSnCK/w4v8hlfczm9pYIYfq5ikks9OyvkMp9HLbjR6Fi+mWcEQZVU4RFkVELGsigkzFBgD2T3Xxs7FcJNtqJJoaU+y8znMCgVpYLEgDSwYoswKB8l58WAHBcZAbp9rY3UdJavzN8yW+eRVTVdXd3cgigSn0s1vKf0MJ7/Tky35LSXOcCf5LZlnOPntr2zMbylYGU6jl91o9Gy+mMkKBzPJiolk7DSMbnNSwMSy84HsNifbYptJ5dwMuxutRFkVClFWBUOUVfMXZVVExMpEQYGB7FwI187J+InO34jd/S8oRYJTqeS35H2G+5HfUmoZTn6bI7/Dw+v8loKT4TR62Y1GL0tezFSKEAzk9IM805IVCmaSFQ9mkhUUydgpODIpWTFj50M4k9LdLS2Vk+8TbekuBadIcIr8Dq5syu9Uslsiv82EMb+l8GQ4jV52C/2um6mGudu+XJL535HKB5DbkgVf2k6fzOzPT8GBIaMcvc9S+TsqdfgY43vB713Apvj621OT8fcyEhp1plPFp0/5PQxJ5LdrsjC/nSK/cwP5jbAIdaM36kynJPsziOl+0KY7axfL7xm81K1xdG+3rzuTzgdiOh8MB4aMSvmxGTF5jus/MluPamTTUQI3decX+j2EnJNOhpPfUljzW8qyDCe/A4EMhxdC3eglku7ae8n+hzlr8K2l+ndjtVTE+JokK0RiCwur90SmZgbT+eBN9/zQWH6da+S1dM8ZMkr1+lxBLmy8Qn5nB7/zWzqf4anmd6oNHvntPTczPJ3rK5LhyCY0ejGc7KQlebubVqww7qzldOcsu6/BttaOhLtomb32xlnl6Psm1YYv3R0CJfsf5k43aji0cYn0t5McPSbX2d0RUEq8iUXsa2KnAIkWFlbvB4qHxMjv7OVHfkv2Mjzd/JYyv8trFPmdnJP8lqwzPNX8lszfD+Q3/BLqzVg6P/yjioed/ceX7No4kvMLopoJ44d8Nkhli+VUrosjDSwYrGaErYoDrvuV2xIVGk6u9yWZzypHC4buri5NqBwTuBPHk3ErvyWub5Yr3MhvKfm1KSXyO+wynd9S8DKczViyG43esGEJi4RUmjuKgdxip4hwcjFrO4WCsUgwFgdmRYFZQUAxkFvMigiz4sFYOJgVDOMujASiSHDKSX5L8RlOfgdTsgx3kt9SfIankt/SwAwnv4PBmOF28lsamOE1o4fR6GUZGr0AiS0ULtr3x/7bUy0QKAyCJ1HhEFs0xBYMVs2esVCILRKSNXixxQFFQTDFFg7GoiFRw0ejF5/fkvUkHfkdLl7ltxSf4cmaOzI8eBI1fskm7IKS4TR62Y1Gz6TRs1MgUByEh1nRkKxYsCoUrJq82AKB4iC8rJq+2IIhWiycONatebXjAvehlIydibpohpPfSCW/pfMZ7jS/JSbowspJfkvByXAaveyW5/cAsoXdJu++Y3soEkLG7DXf1trR//4wO/cn2a5/dpq8QxuXUCSETOxrHvteiH2PuLkjX1DYbfLI7/BJJb+dMOZ39N8t+R0+xvyOvhfIb/gp1I1e3663Lb9nLBIoEJDo9Y8WC4m2bTc7ed+syaNAQLJiAeasmjzyG2avv7HZs3utxGixTn7DTOzrT7MHv4W60YsyHs0zKxIAaeB7IZWdV5MVCYCUuFigUDg/UUd+w650Gv5El1Agv2FktjqDyTr4gUbPgCIByVg1e05nhaMoEmCF90R6yG+YiX1fWOW31fJ740Qd+Y1EaPbgNxq9c8zW6VMkwEq67w2KBNhlVSi8tvugb2PKNmZH88hv2JXKygyJ/EbqWJUBr4S+0Ys9+kKRACfMZoVjmc0Im4U7RQKSMdugBc6PngNRZp/xdjdm4agMnCC/4afQN3pAOozFgpMd3Ah9pIpCcyAm6uBUssk6o9iJOo7mwYnY9wmrMuAlGj0NLM4pEpAKu8t/Yot0igTYxXvFHPkNt9k9Usy/STjFBC+8RqN3Tqpr9AEzxkIh0Y5tgBMUCoB7nE4McDQdqWJiAH6g0QPSlMoRhLaWFkIfjvGeMcdEHdxiZ/k9ky0AcgWNngHLfpAuJ+fpAXAP+Y10OJkwYNIF6eDIMLwS6kbv0Jvb/B4CAiZRocB2ynDT9vc+9XsIQCAkmyBg6T3cxBHh8Dl8+LBuueUWFRcXa8SIEbrjjjt07NixhI9pb2/XrbfeqvLycl144YW66qqr9Itf/MLx7w51oyedPfrCsh+ky+6RBGbxkK5DG5dQKABADuJIcDjdcsst+tOf/qTNmzfr5Zdf1htvvKG77ror4WPmz5+v3bt369e//rXee+89/c3f/I1uuukmvfvuu45+d+gbvVgs+4EXOD8PSN+hN7exTBqeeWXnASbqADi2c+dObdq0ST/60Y9UW1urGTNm6KmnntL69eu1f791pmzbtk3f+ta3NHXqVF122WVaunSpRowYoRaHE700egCAnBVdkcFEHbzARB3cwvL77NTV1RX3derUqbR+XnNzs0aMGKEpU6b031ZfX6+8vDy98847lo+bNm2aNmzYoMOHD6uvr0/r16/XyZMn9Vd/9VeOfn9+qgMHAAAAgL3vtmrQkCK/h5GyyOmTkqSKioq425uamvTggw+m/HPb29tVWload1t+fr4uueQStbe3Wz7u5z//uebOnauRI0cqPz9fQ4cO1a9+9St99rOfdfT7OaIHAABCLXpEmHP2gXDbt2+fjh492v+1ePFi0/stWrRIgwYNSvi1a9eulMexbNkyHTlyRK+++qr+8Ic/qLGxUTfddJPee+89Rz+HI3oAAADntG3+QCXXXuP3MBBQhzYu0chZy1Vx5Xi/hwITxcXFKi4uTnq/b3/727r99tsT3ueyyy5TeXm5DhyI33X9zJkzOnz4sMrLy00f99FHH+npp5/W+++/r89//vOSpMmTJ+v3v/+9Vq9erTVr1th7MqLRA1xz37E9WnnROG1r7VDl9VV+DwcBdmjjElX/g/NtlgHY0/m7N1RaNd3vYQDIUqNGjdKoUaOS3q+urk5HjhxRS0uLampqJEmvvfaa+vr6VFtba/qYEydOSJLy8uIXXg4ePFh9fX2OxsnSTQDIQXvfbfV7CAAAIIEJEyboxhtv1MKFC7V9+3a99dZbamho0Ne+9jWNGTNGkvTJJ59o/Pjx2r59uyRp/Pjx+uxnP6v/8T/+h7Zv366PPvpIjz/+uDZv3qw5c+Y4+v00ekAGsO07AAAAfvrTn2r8+PG67rrrNGvWLM2YMUPPPPNM//dPnz6t3bt39x/JGzJkiDZu3KhRo0Zp9uzZmjRpkn7yk5/oueee06xZsxz9bpZunsPW3PAKW3MDAACEwyWXXKLnn3/e8vuVlZWKRCJxt33uc5/TL36R/ikaHNEDPNTm8EKXAAAAQCpC3+ixlTIAALCDFRkAcknoGz0AQG5j6T0AAAPR6AEZ0vm7N/weAgAgRX0fvOX3EAAgLTR6AAAAABAwWdHorV69WpWVlSoqKlJtbW3/dSSsvPDCCxo/fryKioo0ceJEbdy40aORAgBikd8ICzbTApBrfG/0NmzYoMbGRjU1NWnHjh2aPHmyZs6cqQMHDpjef9u2bZo3b57uuOMOvfvuu5ozZ47mzJmj999/3+ORA0C4kd8AAGQv3xu9J554QgsXLtSCBQtUVVWlNWvWaOjQoVq3bp3p/Z988kndeOONuu+++zRhwgQ9/PDDuuqqq/T00097PHLAmebW/X4PAXAV+Q0AQPby9YLpPT09amlp0eLFi/tvy8vLU319vZqbm00f09zcrMbGxrjbZs6cqZdeesny95w6dUqnTp3q//PRo0clScdO9ehkpFeS1NXVlerTAPpF30/Hz5xR98keFXV3qzu/UCeOHVPvqeOKnD7Jew2uiJw5m2nGi6x6JRvy+/iZMzoZ6eXfFFxhzO+C4yfU3dWlE8eOqefEMfIbromcPqneUyfO/r9PGY5w8LXR6+zsVG9vr8rKyuJuLysr065du0wf097ebnr/9vZ2y9+zYsUKPfTQQwNu/+IPzl+l/oHhw50MHUjsnY+ld96WHv3xgG8NH/5978eDwOru7tZwH/KL/EZgRfNbPx7wLfIbbvnPV8/+168MRzj42uh5ZfHixXGzyEeOHNFnPvMZ7d27N1T/uLq6ulRRUaF9+/apuLjY7+F4hufN8w6iSCSi7u5ujRkzxu+hZBT5fVZY3tdGPG+ed1CFJcPhL18bvZKSEg0ePFgdHR1xt3d0dKi8vNz0MeXl5Y7uL0mFhYUqLCwccPvw4cMDHyRmiouLed4hwvMOLj8bHfLbH2F4X5vheYdLWJ53mCar4A9fN2MpKChQTU2NtmzZ0n9bX1+ftmzZorq6OtPH1NXVxd1fkjZv3mx5fwCA+8hvAACym+9LNxsbG3XbbbdpypQpmjp1qlatWqXjx49rwYIFkqT58+dr7NixWrFihSTpnnvu0bXXXqvHH39cX/nKV7R+/Xr94Q9/0DPPPOPn0wCA0CG/AQDIXr43enPnztXBgwf1wAMPqL29XdXV1dq0aVP/Cft79+5VXt75A4/Tpk3T888/r6VLl+r+++/X5z73Ob300ku68sorbf/OwsJCNTU1mS4HCjKeN887DML6vP1AfnuH583zDoOwPm8gUwZF2NcVAAAAgENdXV0aPny4Lq5fqkFDivweTsoip0/qP1/9vo4ePRqo80N9v2A6AAAAAMBdNHoAAAAAEDA0egAAAAAQMDR6AAAAABAwNHoAAAAAEDCBbfRWr16tyspKFRUVqba2Vtu3b094/xdeeEHjx49XUVGRJk6cqI0bN3o0Unc5ed5r167V1VdfrYsvvlgXX3yx6uvrk/49ZSunr3fU+vXrNWjQIM2ZMyezA8wQp8/7yJEj+uY3v6nRo0ersLBQ48aNy7n3utPnvGrVKl1xxRW64IILVFFRoXvvvVcnT570aLRIBflNfttBfudefktkOOClQDZ6GzZsUGNjo5qamrRjxw5NnjxZM2fO1IEDB0zvv23bNs2bN0933HGH3n33Xc2ZM0dz5szR+++/7/HI0+P0eW/dulXz5s3T66+/rubmZlVUVOiGG27QJ5984vHI0+P0eUe1tbXpO9/5jq6++mqPRuoup8+7p6dH119/vdra2vTiiy9q9+7dWrt2rcaOHevxyFPn9Dk///zzWrRokZqamrRz5049++yz2rBhg+6//36PRw67yG/ym/weKAj5LZHhgNcCeR292tpaffGLX9TTTz8tSerr61NFRYW+9a1vadGiRQPuP3fuXB0/flwvv/xy/21/+Zd/qerqaq1Zs8azcafL6fM26u3t1cUXX6ynn35a8+fPz/RwXZPK8+7t7dU111yj//7f/7t+//vf68iRI3rppZc8HHX6nD7vNWvWaOXKldq1a5eGDBni9XBd4fQ5NzQ0aOfOndqyZUv/bd/+9rf1zjvv6M033/Rs3LCP/Ca/ye9g5rdEhgcR19HLboE7otfT06OWlhbV19f335aXl6f6+no1NzebPqa5uTnu/pI0c+ZMy/tno1Set9GJEyd0+vRpXXLJJZkaputSfd7f+973VFpaqjvuuMOLYboulef961//WnV1dfrm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",
      "text/plain": [
       "<Figure size 1000x500 with 3 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_contour_row(f_x1_h, f_x1_h_spectrally);"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "6.98075528968448e-15"
      ]
     },
     "execution_count": 37,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.linalg.norm(f_x1_h_spectrally - f_x1_h) / np.linalg.norm(f_x1_h)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [],
   "source": [
    "grad_f_h_spectrally = np.fft.ifft2(\n",
    "    derivative_operator * np.fft.fft2(f_h)\n",
    ").real"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(2, 100, 100)"
      ]
     },
     "execution_count": 39,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "grad_f_h_spectrally.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "base",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
